package nl.haemers.data.reflection 
{
	import flash.utils.getDefinitionByName;
	import nl.haemers.data.constants.DataTypes;
	import nl.haemers.data.constants.ReflectionConstants;
	import nl.haemers.data.reflection.IMetadatas;
	import nl.haemers.data.reflection.Type;
	import nl.haemers.data.serializers.ObjectSerializer;
	import nl.haemers.data.utils.ObjectUtils;
	/**
	 * ... 
	 * @author Jonathan Haemers
	 */
	public class Variable extends Property implements IVariable 
	{		
		public function Variable(description:XML) : void
		{
			super(description);
		}
		
		/** Public methods **/
		
		/** Getters & Setters **/
		/* TODO: Not sure if this is valid anymore. Maybe it's deprecated! Need to test this.
		public function get objectType() : Type 
		{
			if (_objType == null && !ObjectUtils.isDataType(_dataType))
			{
				_objType = createType(this.dataType);
			}
			
			return _objType;
		}
		*/
		/**
		 * Variable is always writeable.
		 */
		override public function get writeable() : Boolean
		{
			return true;
		}
		
		/** Protected methods **/
		
		/** Private methods **/		
	}

}